#pragma once
#include <iostream>
#include <vector>
#include <math.h>
#include "State.h"

class Algorithm
{
public:
	Algorithm(State **states,int size,int mCount);
	~Algorithm();
	void Neh();
	void NehAcc();
	int GetCmax();
private:
	State **states;
	void QuickSort(int x, int y);
	void CalculateR(int &pos);
	void CalculateQ(int &pos,int &i);
	void FindCmax(int& i,int &id);
	int *tmpCmax;
	int Cmax;
	int minCmax;
	int size;
	int mCount;
};